iT邦幫忙

2024 iThome 鐵人賽

DAY 11
0
自我挑戰組

呼蛇容易遣蛇難,要就當大蟒蛇!一起來Python吧 !系列 第 11

Day 11 函式參數詳解:參數預設值、名稱對應、任意長度

  • 分享至 

  • xImage
  •  

函式參數的預設資料

基本語法

def 函式名稱(參數名稱=預設資料):
    函式內部程式碼

#參數msg預設資料為"Hello"

def say(msg="Hello"):
    print(msg)

第一種:有給參數

say("Hello Function")
#Hello Function

第二種:沒有給參數,就會使用預設值

say()
#Hello

名稱對應
直接用參數的名稱對應資料,且不管順序

*基本語法

def 函式名稱(名稱1,名稱2)
    函式內部程式碼

*呼叫函式
以參數名稱對應資料

函式名稱(名稱2=3,名稱1=5)

函式名稱(5,3)


範例

  • 定義一個可以做加法的函式

def divide(n1,n2)
result=n1/n2
print(result)

  • 呼叫

情況一

divide(2,4) 
#0.5

情況二:參數對應名稱,不管順序
(把2丟入n2,把4丟入n1)

divide(n2=2,n1=4) 
#2.0

無限參數又叫"不定"參數

基本語法

  • 無限參數以Tuple資料型態處理
def 函式名稱(*無限參數)
    函式內部的程式碼
  • 呼叫函式,可傳入無限數量的參數
    (你要放幾個都可以)

函式名稱(資料一,資料二,資三...)


範例:

*函式接受無限參數msgs

用for迴圈,把Tuple列表中的資料一個一個印出來

def say(*msgs)
    for msg in msgs: #Tuple方式處理
    print(msg)

*呼叫函式,傳入三個參數資料

say("HI","oh","you")

for迴圈會逐次印出
#hi,oh,you


*參數的預設資料

def power(base,exp=0)  #給exp預設值,任何數字的0次方都是1
    print(base**exp)   #兩個*就代表次方
power(3,2)
#9
power(3) #未給第2個參數,使用預設值
#3 <= 3的1次方

如果沒有給預設值,參數又沒寫,就會錯誤!

無限(不定)參數範例:
不定的意思就是:不限 你給幾個就算幾個

第一種,變成Tuple形式

def avg(*ns):
    print(ns)
avg(3,4)

#(3,4)

第二種,使用for迴圈,從列表一個一個印出

def avg(*ns):
    for n in ns:
    print(ns)
avg(3,4)

#3
#4

*計算平均值

def avg(*ns):
    for n in ns:
        sum=sum+n
    print(sum/len(ns))  # len(ns)=> ns列表的長度
avg(3,4)
#3.5 

avg(3,5,10)
#6.0

上一篇
Day 10 函式基礎:定義並呼叫函式
下一篇
Day 12 Python Module 模組的載入與使用
系列文
呼蛇容易遣蛇難,要就當大蟒蛇!一起來Python吧 !30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言